package com.example.tliasmanagement.mapper;

import com.example.tliasmanagement.entity.Dept;
import com.example.tliasmanagement.vo.DeptVo;
import org.apache.ibatis.annotations.*;

import java.util.List;
@Mapper
public interface DeptMapper {
    //    2. 手动映射
//    @Results({
//            @Result(column = "create_time", property = "createTime"),
//            @Result(column = "update_time", property = "updateTime"),
//    })
    @Select("select id, name, create_time, update_time from dept")
    //1. 别名 @Select("select id, name, create_time as createTime, update_time as updateTime from dept")
    public List<DeptVo> selectAll();

    @Delete("delete from dept where id = ${id}")
    void deleteById(Integer id);

    // ognl表达式
    @Insert("insert into dept(name, create_time, update_time)values(#{name}, #{createTime}, #{updateTime})")
    void insert(Dept dept);

    @Select("select * from dept where id = #{id}")
    Dept selectById(Integer id);

    //@Update("update dept set name=#{name},update_time=#{updateTime} where id = #{id}")
    void update(Dept dept);
}